package com.java.dao;

import com.java.domain.ActivityReview;
import com.java.domain.event.ActivityReviewEvent;
import java.util.List;
import java.util.Map;
import org.apache.ibatis.annotations.Param;

/**
* @ClassName: ActivityReviewDao
* @Description: 提供基本的增删改查接口，本类不可手动修改
* @author admin
* @date 2024-04-17
 */
public interface ActivityReviewDao {

	/**
	 * 完全插入，没有条件判断
	 */
    int insert(ActivityReview record);

	/**
	 * 不完全插入，根据条件判断
	 */
    int insertSelective(ActivityReview record);

	/**
	 * 批量完全插入，没有条件判断
	 */
    int insertBatch(List<ActivityReview> list);

	/**
	 * 完全更新，没有条件判断
	 */
    int update(ActivityReview record);

	/**
	 * 不完全更新，根据条件判断
	 */
    int updateSelective(ActivityReview record);

	/**
	 * 根据主键删除信息
	 */
    int deleteByKey(String reviewId);

	/**
	 * 根据多个主键删除信息
	 */
    int deleteByKeys(List<String> reviewIds);

	/**
	 * 修改删除，主键/删除的字段名
	 */
    int deleteUpdate(@Param("reviewId")String reviewId, @Param("delColumn")String delColumn);

	/**
	 * 修改删除，多个主键/删除的字段名
	 */
    int deleteUpdates(@Param("reviewIds")List<String> reviewIds, @Param("delColumn")String delColumn);

	/**
	 * 根据主键获取单个信息
	 */
    ActivityReviewEvent selectByKey(String reviewId);

	/**
	 * 根据分页查询列表
	 */
    List<ActivityReviewEvent> selectAll(@Param("record")Map<String, Object> record, @Param("pageOffset")int pageOffset, @Param("pageSize")int pageSize);

	/**
	 * 分页搭配的总数量
	 */
    long selectAllCount(@Param("record")Map<String, Object> record);
    
    /**
	 * 没有分页查询列表
	 */
    default List<ActivityReviewEvent> selectAllNotPage(Map<String, Object> record) {
    	return selectAll(record, 0, 0);
    }
    
    ActivityReviewEvent selectByInfo(ActivityReview info);
}